home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Software Vault: The Diamond Collection
/
The Diamond Collection (Software Vault)(Digital Impact).ISO
/
cdr37
/
rreq11b.zip
/
REGREQ.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1995-03-24
|
6KB
|
381 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 3.1O (Encryption type I) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Boolean BOOLEAN001
Boolean BOOLEAN002
Integer INTEGER001
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String STRING008
String STRING009
String STRING010
String STRING011
String STRING012
String TSTRING013(1,1)
String TSTRING014(1)
String STRING015
String STRING016
String STRING017
String STRING018
String STRING019
String STRING020
String STRING021
String STRING022
String STRING023
String STRING024
String STRING025
String STRING026
String STRING027
String STRING028
String STRING029
String STRING030
String STRING031
String STRING032
Declare Function FUNCTION002(Integer INTEGER002) String
;------------------------------------------------------------------------------
Goto LABEL004
End
INTEGER001 = Abs(0 - 0)
EndFunc
;------------------------------------------------------------------------------
Function FUNCTION002(Integer INTEGER002) String
Boolean BOOLEAN001
String STRING002
String STRING003
BOOLEAN001 = 0
STRING002 = ""
:LABEL001
If (BOOLEAN001) Goto LABEL003
FGet INTEGER002, STRING002
If (Ferr(INTEGER002)) Then
BOOLEAN001 = 1
Else
If ((Trim(STRING002, " ") == "") || (Left(STRING002, 1) == ";")) Goto LABEL002
Goto LABEL003
:LABEL002
Goto LABEL001
Endif
:LABEL003
If (BOOLEAN001 == 1) STRING002 = ""
FUNCTION002 = STRING002
EndFunc
STRING004 = GetEnv("PCBDRIVE") + GetEnv("PCBDIR") + "\PCBOARD.SYS"
STRING005 = ReadLine(PCBDat(), 27) + "PCBTEXT"
If (ReadLine(PCBDat(), 74) == 0) Then
STRING003 = STRING005
Else
INTEGER003 = FNext()
FOpen INTEGER003, STRING004, 0, 0
FSeek INTEGER003, 80, 0
FRead INTEGER003, STRING006, 4
FClose INTEGER003
STRING005 = Trim(STRING005 + STRING006, " ")
If (Right(STRING005, 1) == ".") STRING005 = Trim(STRING005, ".")
STRING003 = STRING005
Endif
EndFunc
STRING008 = GetEnv("PCBDRIVE") + GetEnv("PCBDIR") + "\PCBOARD.SYS"
If (ReadLine(PCBDat(), 74) == 0) Then
STRING007 = ""
Else
INTEGER004 = FNext()
FOpen INTEGER004, STRING008, 0, 0
FSeek INTEGER004, 80, 0
FRead INTEGER004, STRING009, 4
FClose INTEGER004
STRING009 = Trim(STRING009, " ")
If (Left(STRING009, 1) == ".") STRING009 = ""
STRING007 = STRING009
Endif
EndFunc
:LABEL004
STRING010 = PPEPath() + PPEName() + ".LST"
STRING011 = PPEPath() + PPEName() + ".CFG"
STRING020 = PPEPath() + "RRTMPMSG.$$$"
STRING022 = "SYSTEM DAEMON"
STRING025 = PPEName() + ": notice"
STRING016 = "D"
STRING017 = "Z"
BOOLEAN002 = 0
INTEGER005 = FNext()
FOpen INTEGER005, STRING011, 0, 0
If (Ferr(INTEGER005)) Then
Log 0, "Error opening " + STRING011
PrintLn "An Error Occured. Please notify sysop...."
Else
STRING012 = FUNCTION002(INTEGER005)
STRING019 = FUNCTION002(INTEGER005)
STRING023 = FUNCTION002(INTEGER005)
If (STRING023 == "") STRING023 = "SYSOP"
STRING024 = FUNCTION002(INTEGER005)
If (STRING024 == "") STRING024 = "0"
STRING021 = Upper(FUNCTION002(INTEGER005))
If ((STRING021 <> "N") && (STRING021 <> "R")) STRING021 = "R"
FClose INTEGER005
INTEGER005 = FNext()
FOpen INTEGER005, STRING011, 0, 0
If (Ferr(INTEGER005)) Then
Log 0, "Error opening " + STRING010
PrintLn "An Error Occured. Please notify sysop...."
Else
STRING018 = S2I(FUNCTION002(INTEGER005), "10")
Redim TSTRING013, STRING018, 1
Redim TSTRING014, STRING018
For INTEGER006 = 1 To STRING018
TSTRING013(INTEGER006, 1) = FUNCTION002(INTEGER005)
TSTRING013(INTEGER006, 0) = FUNCTION002(INTEGER005)
TSTRING014(INTEGER006) = " "
Next
FClose INTEGER005
Cls
DispFile STRING012, 1 + 4
Newline
Wait
INTEGER007 = STRING018 + 1
:LABEL005
Cls
PrintLn "@X0AThe following files are available for Downloading: @X07"
Newline
For INTEGER006 = 1 To STRING018
PrintLn "@X0E" + Right(String(INTEGER006), 3) + ")@X0C" + TSTRING014(INTEGER006) + "@X0F" + TSTRING013(INTEGER006, 0) + "@X07"
Next
PrintLn "@X0E" + Right(String(STRING018 + 1), 3) + ") @X0BDownload Selected Files@X07"
PrintLn "@X0E 0) @X0BDo Not download anything now@X07"
Newline
INTEGER007 = 0
STRING015 = ""
InputStr "Enter Number to toggle for Downloading or action to take", STRING015, 14, 3, "1234567890", 256 + 2
If (STRING015 == "") Goto LABEL005
INTEGER007 = S2I(STRING015, "10")
If (INTEGER007 > STRING018 + 1) Goto LABEL005
If (INTEGER007 == 0) Goto LABEL007
If (INTEGER007 == STRING018 + 1) Goto LABEL006
Select Case (TSTRING014(INTEGER007))
Case " "
TSTRING014(INTEGER007) = "*"
Case "*"
TSTRING014(INTEGER007) = " "
Case Else
TSTRING014(INTEGER007) = "*"
End Select
Goto LABEL005
Newline
:LABEL006
PrintLn "@X09Flagging Chosen Files...@X07"
For INTEGER006 = 1 To STRING018
If (TSTRING014(INTEGER006) == "*") Then
BOOLEAN002 = 1
Flag TSTRING013(INTEGER006, 1)
Endif
Next
If (BOOLEAN002) Then
Cls
PrintLn "@X0ABefore downloading, please provide the following information@X07"
InputStr "Please provide your Real Name", STRING026, 10, 45, Mask_Alpha(), 256 + 2
Newline
PrintLn "@X0BChoose a Transfer Protocol"
InputStr "(X)-modem, (Y)-Modem, or (Z)-modem", STRING017, 11, 1, "xzyXYZ", 256 + 2
STRING016 = STRING016 + ";" + STRING017
KbdStuff "Y"
Command 0, STRING016
KbdFlush
INTEGER005 = FNext()
FCreate INTEGER005, STRING020, 1, 3
FPutLn INTEGER005, STRING026
FPutLn INTEGER005, "has downloaded the Following files:"
For INTEGER006 = 1 To STRING018
If (TSTRING014(INTEGER006) == "*") Then
FPut INTEGER005, TSTRING013(INTEGER006, 0) + " - "
FPutLn INTEGER005, TSTRING013(INTEGER006, 1)
Endif
Next
FClose INTEGER005
Else
:LABEL007
STRING015 = "Y"
PrintLn "@X0AYou have decided not to download the files"
InputYN "Would you like to an application Mailed to you", STRING015, 10
STRING015 = Upper(STRING015)
Newline
If (STRING015 == NoChar()) Goto LABEL008
Cls
PrintLn "@X0APlease Provide the Following Information@X07"
Newlines 2
STRING015 = ""
PromptStr 259, STRING015, 25, Mask_Alpha(), 2 + 4 + 256
STRING026 = STRING015
STRING015 = ""
PromptStr 260, STRING015, 25, Mask_Alpha(), 2 + 4 + 256
STRING026 = STRING026 + STRING015
DispText 698, 64
PromptStr 699, STRING027, 50, Mask_Alpha(), 2 + 4 + 256
PromptStr 700, STRING028, 50, Mask_Alpha(), 2 + 4 + 256
PromptStr 701, STRING029, 25, Mask_Alpha(), 2 + 4 + 256
PromptStr 702, STRING030, 10, Mask_Alpha(), 2 + 4 + 256
PromptStr 703, STRING031, 10, Mask_Alpha(), 2 + 4 + 256
PromptStr 704, STRING032, 15, Mask_Alpha(), 2 + 4 + 256
INTEGER005 = FNext()
FCreate INTEGER005, STRING020, 1, 3
FPutLn INTEGER005, STRING026
FPutLn INTEGER005, "has requested you mail information to him/her."
FPutLn INTEGER005, "The following address info was provided:"
FPutLn INTEGER005, ""
FPutLn INTEGER005, STRING026
FPutLn INTEGER005, STRING027
If (Trim(STRING028, " ") <> "") FPutLn INTEGER005, STRING028
FPutLn INTEGER005, Trim(STRING029, " ") + ", " + STRING030 + " " + STRING031
FPutLn INTEGER005, STRING032
FClose INTEGER005
Endif
Newlines 2
PrintLn "@X0DSending Message to Sysop@X07"
Message S2I(STRING024, "10"), STRING023, STRING022, STRING025, STRING021, 0, 0, 0, STRING020
Cls
PrintLn "@X0AThank you...@X07"
Endif
Endif
:LABEL008
If (STRING019 == "Y") Then
PrintLn "@X0CLogging off... @X07"
Bye
Endif
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 2 End
; 5 Cls
; 1 Wait
; 38 Goto
; 66 Let
; 14 PrintLn
; 29 If
; 1 DispFile
; 2 FCreate
; 4 FOpen
; 6 FClose
; 1 FGet
; 1 FPut
; 12 FPutLn
; 2 Log
; 3 InputStr
; 1 InputYN
; 8 PromptStr
; 6 Newline
; 2 Newlines
; 1 DispText
; 1 KbdStuff
; 1 Bye
; 1 Message
; 2 FSeek
; 2 FRead
; 2 Redim
; 1 KbdFlush
; 1 Flag
; 4 EndFunc
; 1 Command
;
;
; ■ Functions used :
;
; 58 +
; 1 -
; 18 ==
; 3 <>
; 4 <
; 4 <=
; 1 >
; 8 >=
; 16 !
; 9 &&
; 5 ||
; 2 Upper()
; 2 Left()
; 3 Right()
; 3 Ferr()
; 6 Trim()
; 1 NoChar()
; 2 String()
; 9 Mask_Alpha()
; 3 PCBDat()
; 3 PPEPath()
; 3 ReadLine()
; 4 GetEnv()
; 3 S2I()
; 1 Abs()
; 3 PPEName()
; 6 FNext()
;
;------------------------------------------------------------------------------
;
; Analysis flags : fd
;
; f - Flag files for download ■ 3
; This may be normal if a PPE needs to send some files, but since
; this statement allows flagging of any file on the hard disk, you
; have to be carefull. Check!
; ■ Search for : FLAG
;
; d - Access PCBOARD.DAT ■ 2
; Program gets the full pathname to PCBOARD.DAT, this may be usefull
; for many PPE so they can find various informations on the system
; (system paths, max number of lines in messages, ...) but it may also
; be a way to gather vital informations.
; ■ Search for : PCBDAT()
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 4 For/Next
; 0 While/EndWhile
; 9 If/Then or If/Then/Else
; 1 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------